home *** CD-ROM | disk | FTP | other *** search
/ Champak 141 / (Vol 141) Oct 17 2011.iso / Games / Clueless.swf / scripts / Forms / CluelessBaseForm.as < prev    next >
Encoding:
Text File  |  2011-10-17  |  6.5 KB  |  216 lines

  1. package Forms
  2. {
  3.    import Common.SoundManager;
  4.    import flash.display.DisplayObject;
  5.    import flash.display.MovieClip;
  6.    import flash.display.SimpleButton;
  7.    import flash.events.Event;
  8.    import flash.events.MouseEvent;
  9.    import flash.text.TextField;
  10.    import flash.ui.Mouse;
  11.    
  12.    public class CluelessBaseForm extends BaseForm
  13.    {
  14.        
  15.       
  16.       public var Music:String = "";
  17.       
  18.       public var TutorialStartFrame:int = 1;
  19.       
  20.       protected var _bSkipTutorial:ButtonSkipTutorial = null;
  21.       
  22.       public var bChangeMusic:Boolean = true;
  23.       
  24.       protected var _mcTutorial:TutorialMovieClip = null;
  25.       
  26.       protected var _mouseeffect:BaseEffect;
  27.       
  28.       protected var _bTutorialWaitForUser:Boolean = false;
  29.       
  30.       protected var _mcMouseCursor:MovieClip;
  31.       
  32.       protected var _mcTutorialBlotter:MCBlotter = null;
  33.       
  34.       public function CluelessBaseForm()
  35.       {
  36.          _mcTutorialBlotter = null;
  37.          _mcTutorial = null;
  38.          _bTutorialWaitForUser = false;
  39.          _bSkipTutorial = null;
  40.          TutorialStartFrame = 1;
  41.          bChangeMusic = true;
  42.          Music = "";
  43.          super();
  44.          _mcMouseCursor = new MouseCursor();
  45.          addChild(_mcMouseCursor);
  46.          _mouseeffect = new MouseEffect();
  47.          addChild(_mouseeffect);
  48.          _mcMouseCursor.mouseEnabled = false;
  49.          _mcMouseCursor.mouseChildren = false;
  50.          Mouse.hide();
  51.          addEventListener(MouseEvent.MOUSE_MOVE,onMouseMove,false,0,true);
  52.          _mcMouseCursor.visible = false;
  53.          if(this.totalFrames > 1)
  54.          {
  55.             throw new Error("BaseForm has timeline!!!");
  56.          }
  57.          this.tabChildren = false;
  58.       }
  59.       
  60.       override public function onUnfocus() : void
  61.       {
  62.          super.onUnfocus();
  63.          _mcMouseCursor.visible = false;
  64.          clearTutorial();
  65.       }
  66.       
  67.       protected function onMouseMove(param1:MouseEvent) : void
  68.       {
  69.          _mcMouseCursor.x = this.mouseX;
  70.          _mcMouseCursor.y = this.mouseY;
  71.       }
  72.       
  73.       protected function localize(param1:TextField, param2:String) : void
  74.       {
  75.          param1.mouseEnabled = false;
  76.          param1.text = Localization.getString(param2);
  77.       }
  78.       
  79.       public function addSkipButton() : SimpleButton
  80.       {
  81.          if(_bSkipTutorial == null)
  82.          {
  83.             _bSkipTutorial = new ButtonSkipTutorial();
  84.             _bSkipTutorial.x = 120;
  85.             _bSkipTutorial.y = 435;
  86.             addChildAt(_bSkipTutorial,getChildIndex(_mcMouseCursor));
  87.          }
  88.          return _bSkipTutorial;
  89.       }
  90.       
  91.       protected function exitForm() : void
  92.       {
  93.          onBack(new MouseEvent(""));
  94.       }
  95.       
  96.       override public function onFocus() : void
  97.       {
  98.          super.onFocus();
  99.          onMouseMove(new MouseEvent(""));
  100.          _mcMouseCursor.visible = true;
  101.          if(Music != "" && bChangeMusic)
  102.          {
  103.             Storage.getInstance().playBGM(Music);
  104.          }
  105.       }
  106.       
  107.       protected function playSound(param1:String) : void
  108.       {
  109.          SoundManager.getInstance().playSound(param1);
  110.       }
  111.       
  112.       protected function onTutorialWaitForUser(param1:Event) : void
  113.       {
  114.          _bTutorialWaitForUser = true;
  115.       }
  116.       
  117.       protected function onMouseClickButtonSound(param1:MouseEvent) : void
  118.       {
  119.          playSound("ButtonClickSound");
  120.       }
  121.       
  122.       public function turnBlotterOff(param1:Event) : void
  123.       {
  124.          _mcTutorialBlotter.visible = false;
  125.       }
  126.       
  127.       protected function onTutorialBlotterClicked(param1:MouseEvent) : void
  128.       {
  129.          if(!_bTutorialWaitForUser)
  130.          {
  131.             gotoNextTutorialFrame();
  132.          }
  133.       }
  134.       
  135.       protected function gotoNextTutorialFrame() : void
  136.       {
  137.          _bTutorialWaitForUser = false;
  138.          if(_mcTutorial != null)
  139.          {
  140.             turnBlotterOn(new Event(""));
  141.             if(_mcTutorial.currentFrame < _mcTutorial.totalFrames)
  142.             {
  143.                _mcTutorial.gotoAndStop(_mcTutorial.currentFrame + 1);
  144.             }
  145.             else
  146.             {
  147.                clearTutorial();
  148.             }
  149.             SoundManager.getInstance().playSound("TutorialPopupSound");
  150.          }
  151.       }
  152.       
  153.       public function turnBlotterOn(param1:Event) : void
  154.       {
  155.          _mcTutorialBlotter.visible = true;
  156.       }
  157.       
  158.       public function hideMouseCursor() : void
  159.       {
  160.          _mcMouseCursor.visible = false;
  161.       }
  162.       
  163.       protected function onMouseOverButtonSound(param1:MouseEvent) : void
  164.       {
  165.          playSound("ButtonMouseOverSound");
  166.       }
  167.       
  168.       protected function clearTutorial() : void
  169.       {
  170.          if(_mcTutorial != null)
  171.          {
  172.             removeChild(_mcTutorial);
  173.             _mcTutorial = null;
  174.          }
  175.          if(_mcTutorialBlotter != null)
  176.          {
  177.             removeChild(_mcTutorialBlotter);
  178.             _mcTutorialBlotter = null;
  179.          }
  180.          if(_bSkipTutorial != null)
  181.          {
  182.             removeChild(_bSkipTutorial);
  183.             _bSkipTutorial = null;
  184.          }
  185.       }
  186.       
  187.       protected function setTutorial(param1:TutorialMovieClip) : void
  188.       {
  189.          var _loc2_:int = 0;
  190.          _bTutorialWaitForUser = false;
  191.          _mcTutorial = param1;
  192.          _mcTutorial.gotoAndStop(TutorialStartFrame);
  193.          _loc2_ = getChildIndex(_mcMouseCursor);
  194.          addChildAt(_mcTutorial,_loc2_);
  195.          _mcTutorial.addEventListener("turnBlotterOn",turnBlotterOn,false,0,true);
  196.          _mcTutorial.addEventListener("turnBlotterOff",turnBlotterOff,false,0,true);
  197.          _mcTutorial.addEventListener(MouseEvent.CLICK,onTutorialBlotterClicked,false,0,true);
  198.          _mcTutorial.addEventListener("tutorialWaitForUser",onTutorialWaitForUser,false,0,true);
  199.          if(_mcTutorialBlotter == null)
  200.          {
  201.             _mcTutorialBlotter = new MCBlotter();
  202.             _mcTutorialBlotter.addEventListener(MouseEvent.CLICK,onTutorialBlotterClicked,false,0,true);
  203.             _mcTutorialBlotter.alpha = 0;
  204.             addChildAt(_mcTutorialBlotter,getChildIndex(_mcMouseCursor));
  205.             SoundManager.getInstance().playSound("TutorialPopupSound");
  206.          }
  207.       }
  208.       
  209.       protected function installMouseOverSound(param1:DisplayObject) : void
  210.       {
  211.          param1.addEventListener(MouseEvent.MOUSE_OVER,onMouseOverButtonSound,false,0,true);
  212.          param1.addEventListener(MouseEvent.CLICK,onMouseClickButtonSound,false,0,true);
  213.       }
  214.    }
  215. }
  216.